package com.jhgk.jhcee.data.auth.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.experimental.FieldNameConstants;
import org.springframework.format.annotation.DateTimeFormat;

/**
* @Description：系统权限表
*/
@Data
@NoArgsConstructor
@FieldNameConstants
@EqualsAndHashCode(callSuper = false)
@TableName("sys_permission_info")
@ApiModel(value="SysPermissionInfo对象", description="系统权限表")
public class SysPermissionInfo implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "主键ID")
    @TableId(value = "permission_id", type = IdType.AUTO)
    private Long permissionId;

    @ApiModelProperty(value = "父级权限id")
    @TableField("parent_permission_id")
    private Long parentPermissionId;

    @ApiModelProperty(value = "名称")
    @TableField("permission_name")
    private String permissionName;

    @ApiModelProperty(value = "权限值")
    @TableField("permission_value")
    private String permissionValue;

    @ApiModelProperty(value = "图标")
    @TableField("icon")
    private String icon;

    @ApiModelProperty(value = "权限类型：0->目录；1->菜单；2->按钮（接口绑定权限）")
    @TableField("permission_type")
    private Integer permissionType;

    @ApiModelProperty(value = "前端资源路径")
    @TableField("uri")
    private String uri;

    @ApiModelProperty(value = "启用状态；0->禁用；1->启用")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty(value = "排序")
    @TableField("sort")
    private Integer sort;


}

